SELECT c8, c1,
       COUNT(AVG(c1)) OVER W as w_avg_c1,
       MAX(AVG(c2)) OVER W2 as w2_avg_c2,
       MIN(AVG(c3)) OVER W3 as w3_avg_c3,
       AVG(AVG(c9)) OVER W_DFLT_FRM AS wDfrm_avg_c9,
       COUNT(AVG(c9)) OVER W as w_avg_c9,
       AVG(SUM(c3)) OVER W2 as w2_avg_c3,
       MIN(AVG(c2)) OVER W3 as w3_avg_c2,
       MAX(AVG(c1)) OVER W_DFLT_FRM AS wDfrm_avg_c1
FROM "t_alltype.parquet"
GROUP BY c1,c8
       WINDOW W AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING ),
       W2 AS ( PARTITION BY c8 ORDER BY c1 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW ),
       W3 AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN CURRENT ROW AND CURRENT ROW ),
       W_DFLT_FRM AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW )
